![]() |
![]() |
CubePlayer vam
omogućava da koristite širok raspon MDX funkcija u MDX
Dizajneru:
Funkcije koje
možete koristiti su:
CubePlayer
funkcije |
MDX
funkcije korištene za izradu CubePlayer
funkcija |
Najboljih
N |
Odgovara
MDX funkciji TopCount |
Najboljih
N u sumi |
Odgovara
MDX funkciji TopSum |
Najboljih
N u % |
Odgovara
MDX funkciji TopPercent |
Najlošijih
N |
Odgovara
MDX funkciji BottomCount |
Najlošijih
u sumi |
Odgovara
MDX funkciji BottomSun |
Najlošijih
N u % |
Odgovara
MDX funkciji BottomPercent |
Poredaj |
Odgovara
MDX funkciji Order |
Poredaj
po abecedi |
Kombinacija
Order funkcije i
uvjeta |
Poredaj
po hijerarhiji |
Odgovara
MDX funkciji Hierachize |
Filter |
Odgovara
MDX funkciji Filter |
Ukloni |
Kombinacija
Filter (i NOT članovi
…) |
Prvih
N |
Odgovara
MDX funkciji Head |
ZadnjihN |
Odgovara
MDX funkciji Tail |
Doprinosi |
Posebna
sintaksa |
Za
svakog iz prethodne dimenzije |
Implementacija
MDX Generate
funkcije |
Bez
praznih |
Non
Empty |
Prikaži
totale za vidljive elemente |
VisualTotals |
Usporedni
vremenski članovi |
Implementacija
MDX ParallelPeriods
funkcije |
Drill
down – razine |
Spusti
na razinu |
Dostupnost
CubePlayer funkcija u ovisnosti o osi (redovi ili stupci) gdje se žele
primijeniti:
MDX
funkcije |
CubePlayer
nazivi i funkcije |
Redovi |
Stupci |
TopCount |
Najboljih
N |
DA |
DA |
TopSum |
Najboljih
N u sumi |
DA |
DA |
TopPercent |
Najboljih
N u % |
DA |
DA |
BottomCount |
Najlošijih
N |
DA |
DA |
BottomSun |
Najlošijih
u sumi |
DA |
DA |
BottomPercent |
Najlošijih
N u % |
DA |
DA |
Order |
Poredaj |
DA |
DA |
|
Poredaj
po abecedi |
DA |
DA |
Hierachize |
Poredaj
po hijerarhiji |
DA |
DA |
Filter |
Filter |
DA |
DA |
Filter
(and NOT members
…) |
Ukloni |
DA |
DA |
Head |
Prvih
N |
DA |
DA |
Tail |
ZadnjihN |
DA |
DA |
|
Doprinosi |
DA |
NE |
Generate |
Za
svakog iz prethodne dimenzije |
DA |
DA |
Non
Empty |
Bez
praznih |
DA |
DA |
VisualTotals |
Prikaži
totale za vidljive elemente |
DA |
DA |
Implementacija
MDX ParallelPeriods
funkcije |
Usporedni
vremenski članovi |
DA |
DA |
Spusti
na razinu |
Drill
down – razine |
DA |
DA |
S obzirom da MDX
funkcije mogu biti primijenjene na nekoliko mjesta unutar osi (redovi stupci) u
CubePlayeru raspoznajemo tri
tipa funkcija:
·
Funkcije na osi (set
funkcije)
·
Dimenzijske
funkcije
·
Element funkcije unutrašnje
funkcije)
FUNKCIJE NA
OSI
Funkcije na osi
uvijek se primjenjuju na cijelu os bez obzira na broj dimenzija/hijerarhija na
osi.
Primjer
Imamo razinu State Province u Stupcima
Primijenit ćemo
TopCount 100 (Najboljih 100) na cijeloj
osi.
SELECT
NON
EMPTY
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
}
,100, [Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]
Sada dodajmo još
jednu dimenziju/hijerarhiju, recimo Product Family. Ona će biti pridodana automatski unutar funkcije
TopCount.:
SELECT
NON
EMPTY
TopCount
(
CrossJoin
(
{
[Customer].[hCountry].[State Province].MEMBERS
},
{
[Product].[hProduct].[Product Family].MEMBERS
}
)
,100,
[Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]
Isto će se
dogoditi kad dodamo treću dimenziju:
SELECT
NON
EMPTY
TopCount
(
CrossJoin
(
CrossJoin
(
{
[Customer].[hCountry].[State Province].MEMBERS
},
{
[Product].[hProduct].[Product Family].MEMBERS
}
),
{
[Store].[hStoreType].[Store Type].MEMBERS
}
)
,100,
[Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]
DIMENZIJSKE
FUNKCIJE
Dimenzijske
funkcije uvijek se dodaju na jednu dimenziju/hijerarhiju bez obzira koliko
članova i/ili razina iz
te dimenzije se
nalazi na osi:
Primjer
Imamo razinu State Province u Stupcima
Primijenit ćemo
TopCount 100 (Najboljih 100) na dimenziju Customer (odakle je razina State
Province)
SELECT
NON
EMPTY
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
}
,100, [Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]
U ovome trenutku
Set funkcije (na osi9 i Dimenzijske djeluju jednako, jer je samo jedna dimenzija
na osi.
Dodajmo
dimenziju Product Family
SELECT
NON
EMPTY
CrossJoin
(
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
},
100,
[Measures].[Store
Sales]
),
{
[Product].[hProduct].[Product Family].MEMBERS
}
)
ON
AXIS(0)
FROM
[Sales]
Kao što vidite
TopCount je unutar funkcije koja spaja dvije dimenzije
(CrossJoin) primijenjena samo na
dimenziju
Customer.
Dodajmo jednog
člana iz dimenzije Customer. U našem slučaju
USA
SELECT
NON
EMPTY
CrossJoin
(
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
,
[Customer].[hCountry].[Country].&[USA]
},
100,
[Measures].[Store
Sales]
),
{
[Product].[hProduct].[Product Family].MEMBERS
}
)
ON
AXIS(0)
FROM
[Sales]
Kako je TopCount primijenjena na dimenziju Customer, član iz te dimenzije bit će smješten
unutar
TopCount funkcije, pa će ona djelovati i na
njega.
UNUTRAŠNJE
FUNKCIJE
Unutrašnje
funkcije će uvijek djelovati na jedan element u CubePlayeru neovisno što je
on.
DA bolje
shvatite, to je ono što je u jednom retku u dizajneru, bilo da je razina, član
ili neki kombinirani element.
Primjer
Imamo razinu State Province u stupcima
Primijenit ćemo
TopCount 100 (najboljih 100) na jedan element (gore spomenutu
razinu)
SELECT
NON
EMPTY
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
}
,100,
[Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]
U ovome trenutku
Funkcije na osi, Dimenzijske funkcije i Element funkcije su isto, jer je samo
jedan element na osi.
Dodajmo drugi
element iz druge dimenzije
SELECT
NON
EMPTY
CrossJoin
(
{
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
}
,100,
[Measures].[Store Sales]
)
},
{
[Product].[hProduct].[Product Family].MEMBERS
}
)
ON
AXIS(0)
FROM
[Sales]
U ovome trenutku
Elementi Dimenzija i Dimenzijska funkcija primijenjena na dimenziju Customer bile bi iste, jer je
Samo jedan
element iz dimenzije na osi (razina State Province)
Dodajmo drugi
element (član USA) iz dimenzije Customer.
SELECT
NON
EMPTY
CrossJoin
(
{
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
}
,100,
[Measures].[Store Sales]
),
[Customer].[hCountry].[Country].&[USA]
},
{
[Product].[hProduct].[Product Family].MEMBERS
}
)
ON
AXIS(0)
FROM
[Sales]
Kao što vidite,
funkcija Top Count primijenjena je samo na element
State Province, a novo
dodani član USA je
Izvan
nje.
Dakle Unutrašnje
funkcije djeluju uvijek na SAMO jedan element u dizajneru.
More:
Poredaj po hijerarhiji - Hierarchize
Poredaj po abecedi - Order by alphabet